Upgrading computing devices, such as network switches and routers, at a large scale may require outages and changes for thousands of devices. Occasionally, all of the devices will need to be upgraded as soon as possible. Planning and executing device upgrades across huge enterprise networks can be a challenge for large customers. For example, a severe security vulnerability might require upgrading thousands of interconnected routers as soon as possible. However, rebooting them all at once would cause a severe disruption and a total network outage. Alternatively, an uncoordinated upgrade may cause an even longer outage if dependent devices are in a series, and the upgrade is serial. This would break the only communication path multiple times, as each device in the path is upgraded. Upgrading each router in series may ensure that the upgrade of one device does not affect any other, but would result in a total upgrade time that would not correct a severe security vulnerability in a timely manner.